package nighttest.day04;

import java.io.IOException;
import java.io.RandomAccessFile;
import java.util.Scanner;

/**
 * 用户登录功能
 * 程序启动后，要求用户输入用户名和密码
 * 然后去user.dat文件中比对
 * 成功则输出:登录成功
 * 失败则输出:登录失败，用户名或密码不正确
 * 登录失败的条件:用户名输入正确但是密码不正确，或者用户名输入不正确(user.dat文件中没有此人)
 * @author Xiloer
 */
public class test4_3 {
    public static void main(String[] args) throws IOException {
        RandomAccessFile raf = new RandomAccessFile("user.dat","rw");
        Scanner s = new Scanner(System.in);
        System.out.println("请输入用户名");
        String name = s.nextLine();
        System.out.println("请输入密码");
        String pass = s.nextLine();
        int a = 0;
        for(int i = 0;i<raf.length()/100;i++) {
            //读取用户名
            byte[] data = new byte[32];
            raf.read(data);
            String username = new String(data, "UTF-8").trim();//去除空白符
            if(username.equals(name)){
                //读取密码
                a++;
                raf.read(data);
                String password = new String(data, "UTF-8").trim();
                if(password.equals(pass)){
                    System.out.println("登陆成功");
                }else{
                    System.out.println("密码输入错误");
                }
                break;
            }

        }
        if(a==0){
            System.out.println("查无此人");
        }
        raf.close();
    }

}
